1. Field of the Invention
The present invention relates to an inter-program linking system for linking transmission/reception of data between programs.
2. Description of the Related Art
As the Internet rapidly becomes popular, the demand for linking a WWW server and a mainframe (host) is on the rise.
Since the HTTP (Hyper Text Transfer Protocol) normally used by a WWW browser is connectionless, its session is established when the browser requests a page, and is released when a WWW server transmits the page. Accordingly, another session is established and the association with the previous communication is not maintained, when the next page is accessed. Therefore, when a user accesses the WWW server via the WWW browser, a program invoked by the WWW server accepts a request made by the user, performs a process, and returns the result to the user. The session between the program and the user, however, is released after only a single request-reply operation is performed.
With a client-server system in which a mainframe is used as a server, once a user (client) logs in and establishes a session, he or she can normally and sequentially perform various processes in a state in which the session between the server and the user is maintained.
Accordingly, to link the WWW server and the mainframe, a particular program invoked by the WWW server when a user makes an access must be linked to a program running on a client side when a mainframe is used as a server, in order to maintain the connection state between these programs.
There are two methods for a conventional inter-program linking system: one is a connectionless method shown in FIG. 1A with which a server (a program providing a service) performs a process corresponding to a request and returns a reply when a client (a program requesting and receiving a service) issues the request, so that the processes between the client and the server are completed and the connection between them is released with a single request-reply operation; and the other is a connection method shown in FIG. 1B with which the connection between the client and the server is maintained in order to repeat various process requests and replies until the client requests the server to release the connection, once the client establishes the connection to the server.
With the former method shown in FIG. 1A, when a client process 1 issues a request, a server process 2 performs the process corresponding to the request, and returns its result. When the process is completed, the connection is released.
With the latter method shown in FIG. 1B, when a client process 3 initially issues a request, it establishes a connection to a server process 4. After several requests-replies are repeated, the connection is released by a release request made by the client process 3.
Additionally, with the method for generating a process in the conventional inter-program linking system, one server process is generated for one client process, and a communication is made in a one-to-one correspondence, as shown in FIG. 1C.
The above described conventional inter-program linking system has the problem that the program whose session connection state is released after a single request-reply operation is made as shown in FIG. 1A, cannot be linked to the program whose session connection state is maintained and request-reply operations are repeated.
Additionally, the process generating method requires the troublesome process in which a connection request must be again issued to a server process in order to communicate with the server process after a client process terminates with the former method shown in FIG. 1A, that is, the connection request must be issued for establishing each connection.
An object of the present invention is to provide an inter-program linking system for linking programs whose session continuation forms are different, and a method thereof.
The inter-program linking system according to the present invention is intended to link a program running on a first information processing device which makes a connectionless communication, and a program running on a second information processing device which makes a connection communication. This system comprises an operating process generating unit and a communication process generating unit.
The operating process generating unit generates an operating process for communicating with the first information processing device in correspondence with a user ID for uniquely identifying a transmission source, which is attached to data, upon receipt of the data from the first information processing device.
The communication process generating unit generates a communication process, which corresponds to the user ID, for communicating with the second information processing device which is instructed by the data, according to an instruction from the operating process.
The communication between the operating process and the communication process is performed, for example, via a user file.
In this case, the operating process determines whether or not the user file corresponding to the user ID exists, and writes the data received from the first information processing device to the user file if it exists. If the user file does not exist, the operating process requests the communication process generating unit to generate the communication process, generates the user file corresponding to the user ID, and writes the data received from the first information processing device to the user file.
Furthermore, the communication process reads out the data written by the operating process from the user file corresponding to the same user ID as that corresponding to the communication process itself, transmits the read data to the second information processing device, and writes the process result received from the second information processing device to the user file. The operating process implements a link by reading out the process result written by the communication process from the user file.
The communication between the operating process and the communication process may comprise queues, and is made by using the queues.
In this case, the operating process generating unit generates the operating process which is received from the first information processing device and corresponds to the first data, and can generate a new operating process for newly received data before the previous operating process gives a reply to the first data for the first processing device, so that it can implement a parallel process.
With the inter-program linking system according to the present invention, an operating process is generated and extinguished in each session on a connectionless communication side, while a communication process stays resident and maintains a connection on a connection communication side, so that a link process is implemented by making a communication between the operating process and the communication process.